package com.study.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.study.model.dto.favoritePost.FavoritePostAddRequest;
import com.study.model.dto.favoritePost.FavoritePostQueryRequest;
import com.study.model.entity.FavoritePost;
import com.baomidou.mybatisplus.extension.service.IService;
import com.study.model.vo.FavoritePostVO;
import com.study.model.vo.PostVO;

import javax.servlet.http.HttpServletRequest;

/**
* @author YS
* @description 针对表【favorite_post(收藏的帖子)】的数据库操作Service
* @createDate 2025-02-19 16:36:07
*/
public interface FavoritePostService extends IService<FavoritePost> {

    /**
     * 添加收藏帖子
     * @param favoritePostAddRequest
     * @param request
     * @return
     */
    Long createFavoritePost(FavoritePostAddRequest favoritePostAddRequest, HttpServletRequest request);

    /**
     * 根据id获取收藏帖子包装类
     * @param id
     * @return
     */
    FavoritePostVO getFavoritePostVOById(long id);

    /**
     * 获取收藏帖子分页包装类
     * @param favoritePostQueryRequest
     * @return
     */
    Page<FavoritePostVO> listFavoritePostVOByPage(FavoritePostQueryRequest favoritePostQueryRequest);
}
